package com.ruoyi.merchant.shop.service;

import java.util.List;
import com.ruoyi.merchant.shop.domain.Shop;
import com.ruoyi.merchant.shopverification.domain.ShopVerification;

/**
 * 店铺信息Service接口
 * 
 * @author zzr
 * @date 2025-09-14
 */
public interface IShopService 
{
    /**
     * 查询店铺信息
     * 
     * @param id 店铺信息主键
     * @return 店铺信息
     */
    public Shop selectShopById(Integer id);

    /**
     * 查询店铺信息列表
     * 
     * @param shop 店铺信息
     * @return 店铺信息集合
     */
    public List<Shop> selectShopList(Shop shop);

    /**
     * 全查店铺信息（不分页，过滤逻辑删除）
     * @param shop 筛选条件（如name、address、auditStatusId等，可为null）
     * @return 全量未删除的店铺信息列表
     */
    List<Shop> selectAllShop(Shop shop);

    /**
     * 新增店铺信息
     * 
     * @param shop 店铺信息
     * @return 结果
     */
    public Integer insertShop(Shop shop);

    /**
     * 修改店铺信息
     * 
     * @param shop 店铺信息
     * @return 结果
     */
    public int updateShop(Shop shop);

    /**
     * 批量删除店铺信息
     * 
     * @param ids 需要删除的店铺信息主键集合
     * @return 结果
     */
    public int deleteShopByIds(Integer[] ids);

    /**
     * 删除店铺信息信息
     * 
     * @param id 店铺信息主键
     * @return 结果
     */
    public int deleteShopById(Integer id);

    /**
     * 关联查询店铺信息
     *
     *
     * @return 所有店铺集合
     */
    public List<Shop> selectAll();

    /**
     *  审核店铺通过
     * */
    public int auditStatusTrue(ShopVerification shopVerification);

    /**
     *  审核店铺不通过
     * */
    public int auditStatusFalse(ShopVerification shopVerification);

    /**
     * 根据手机号，查询店铺认证信息
     */
    public Shop selectShopInfo(String mobile);

}
